package com.ruoyi.job.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 对账批次对象 t_cw_check_batch
 * 
 * @author ruoyi
 * @date 2023-05-06
 */
public class TCwCheckBatch extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 自增 */
    private Long id;

    /** 账期年月日（yyyymmdd） */
    @Excel(name = "账期年月日", readConverterExp = "y=yyymmdd")
    private String billDay;

    /** 对账年月日(yyyymmdd) */
    @Excel(name = "对账年月日(yyyymmdd)")
    private String checkDay;

    /** 同一天内的批次序号(对账年月日内) */
    @Excel(name = "同一天内的批次序号(对账年月日内)")
    private Long batchNum;

    /** 批次号（yyyymmdd001），即年月日加上序号（显示用） */
    @Excel(name = "批次号", readConverterExp = "y=yyymmdd001")
    private String batchNo;

    /** 渠道名称 1:代付（提现），2：快捷，3：微信，4：支付宝 */
    @Excel(name = "渠道名称 1:代付", readConverterExp = "提=现")
    private Long billType;

    /** 平台支付订单笔数 */
    @Excel(name = "平台支付订单笔数")
    private Long orderCount;

    /** 拉卡拉账单笔数 */
    @Excel(name = "拉卡拉账单笔数")
    private Long checkCount;

    /** 差错账数量 */
    @Excel(name = "差错账数量")
    private Long diffCount;

    /** 是否完成对账, 1:完成，2：未完成， 3：取消 */
    @Excel(name = "是否完成对账, 1:完成，2：未完成， 3：取消")
    private Long completeState;

    /** 对账确认时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "对账确认时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date confirmDate;

    /** 生成区分（1：自动对账生成，2：手动对账生成） */
    @Excel(name = "生成区分", readConverterExp = "1=：自动对账生成，2：手动对账生成")
    private Long createType;

    /** 账单下载批次（由36位UUID组成，标识使用的哪个批次的账单，参照账单文件表） */
    @Excel(name = "账单下载批次", readConverterExp = "由=36位UUID组成，标识使用的哪个批次的账单，参照账单文件表")
    private String downloadBatch;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    /** 预留字段1 */
    @Excel(name = "预留字段1")
    private BigDecimal reserve1;

    /** 预留字段2 */
    @Excel(name = "预留字段2")
    private Long reserve2;

    /** 预留字段3 */
    @Excel(name = "预留字段3")
    private String reserve3;

    /** 预留字段4 */
    @Excel(name = "预留字段4")
    private String reserve4;

    /** 预留字段5 */
    @Excel(name = "预留字段5")
    private String reserve5;

    /** 删除标识,0:未删除，1：删除 */
    @Excel(name = "删除标识,0:未删除，1：删除")
    private Integer delFlg;

    /** 创建用户ID */
    @Excel(name = "创建用户ID")
    private Long createUserid;

    /** 更新用户ID */
    @Excel(name = "更新用户ID")
    private Long updateUserid;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setBillDay(String billDay) 
    {
        this.billDay = billDay;
    }

    public String getBillDay() 
    {
        return billDay;
    }
    public void setCheckDay(String checkDay) 
    {
        this.checkDay = checkDay;
    }

    public String getCheckDay() 
    {
        return checkDay;
    }
    public void setBatchNum(Long batchNum) 
    {
        this.batchNum = batchNum;
    }

    public Long getBatchNum() 
    {
        return batchNum;
    }
    public void setBatchNo(String batchNo) 
    {
        this.batchNo = batchNo;
    }

    public String getBatchNo() 
    {
        return batchNo;
    }
    public void setBillType(Long billType) 
    {
        this.billType = billType;
    }

    public Long getBillType() 
    {
        return billType;
    }
    public void setOrderCount(Long orderCount) 
    {
        this.orderCount = orderCount;
    }

    public Long getOrderCount() 
    {
        return orderCount;
    }
    public void setCheckCount(Long checkCount) 
    {
        this.checkCount = checkCount;
    }

    public Long getCheckCount() 
    {
        return checkCount;
    }
    public void setDiffCount(Long diffCount) 
    {
        this.diffCount = diffCount;
    }

    public Long getDiffCount() 
    {
        return diffCount;
    }
    public void setCompleteState(Long completeState) 
    {
        this.completeState = completeState;
    }

    public Long getCompleteState() 
    {
        return completeState;
    }
    public void setConfirmDate(Date confirmDate) 
    {
        this.confirmDate = confirmDate;
    }

    public Date getConfirmDate() 
    {
        return confirmDate;
    }
    public void setCreateType(Long createType) 
    {
        this.createType = createType;
    }

    public Long getCreateType() 
    {
        return createType;
    }
    public void setDownloadBatch(String downloadBatch) 
    {
        this.downloadBatch = downloadBatch;
    }

    public String getDownloadBatch() 
    {
        return downloadBatch;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }
    public void setReserve1(BigDecimal reserve1) 
    {
        this.reserve1 = reserve1;
    }

    public BigDecimal getReserve1() 
    {
        return reserve1;
    }
    public void setReserve2(Long reserve2) 
    {
        this.reserve2 = reserve2;
    }

    public Long getReserve2() 
    {
        return reserve2;
    }
    public void setReserve3(String reserve3) 
    {
        this.reserve3 = reserve3;
    }

    public String getReserve3() 
    {
        return reserve3;
    }
    public void setReserve4(String reserve4) 
    {
        this.reserve4 = reserve4;
    }

    public String getReserve4() 
    {
        return reserve4;
    }
    public void setReserve5(String reserve5) 
    {
        this.reserve5 = reserve5;
    }

    public String getReserve5() 
    {
        return reserve5;
    }
    public void setDelFlg(Integer delFlg) 
    {
        this.delFlg = delFlg;
    }

    public Integer getDelFlg() 
    {
        return delFlg;
    }
    public void setCreateUserid(Long createUserid) 
    {
        this.createUserid = createUserid;
    }

    public Long getCreateUserid() 
    {
        return createUserid;
    }
    public void setUpdateUserid(Long updateUserid) 
    {
        this.updateUserid = updateUserid;
    }

    public Long getUpdateUserid() 
    {
        return updateUserid;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("billDay", getBillDay())
            .append("checkDay", getCheckDay())
            .append("batchNum", getBatchNum())
            .append("batchNo", getBatchNo())
            .append("billType", getBillType())
            .append("orderCount", getOrderCount())
            .append("checkCount", getCheckCount())
            .append("diffCount", getDiffCount())
            .append("completeState", getCompleteState())
            .append("confirmDate", getConfirmDate())
            .append("createType", getCreateType())
            .append("downloadBatch", getDownloadBatch())
            .append("remarks", getRemarks())
            .append("reserve1", getReserve1())
            .append("reserve2", getReserve2())
            .append("reserve3", getReserve3())
            .append("reserve4", getReserve4())
            .append("reserve5", getReserve5())
            .append("delFlg", getDelFlg())
            .append("createUserid", getCreateUserid())
            .append("createTime", getCreateTime())
            .append("updateUserid", getUpdateUserid())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
